package com.spark.modules.system.service;

import com.baomidou.mybatisplus.extension.service.IService;
import com.spark.common.core.Result;
import com.spark.common.core.entity.system.SysUser;

/**
 * 系统用户Service
 *
 * @author LYCHEE
 * @date 2025/02/18 09:12
 */
public interface ISysUserService extends IService<SysUser> {

    /**
     * 通过用户名查询用户
     * @param username 用户名
     * @return 用户信息
     */
    SysUser getUserByUsername(String username);

    /**
     * 新增
     *
     * @param sysUser 系统用户对象
     * @return 成功或失败
     */
    Result<?> add(SysUser sysUser);

    /**
     * 编辑
     *
     * @param sysUser 系统用户对象
     * @return 成功或失败
     */
    Result<?> edit(SysUser sysUser);

    /**
     * 通过ID查询
     *
     * @param id 主键
     * @return 系统用户对象
     */
    Result<?> queryById(String id);

    /**
     * 重置密码为：spark@123
     *
     * @return 成功或失败
     */
    Result<?> resetPassWord();
}
